home *** CD-ROM | disk | FTP | other *** search
/ Graphics Plus / Graphics Plus.iso / general / modelers / geomview / source.lha / Geomview / doc / newsletter_article.txt < prev    next >
Text File  |  1993-03-01  |  8KB  |  142 lines

  1. The staff of the Geometry Center is proud to announce release 1.3 of
  2. geomview, an interactive viewer for 3- and 4-D geometric objects built
  3. on OOGL, an object-oriented geometry library.  Geomview is loosely a
  4. successor of our earlier program MinneView, and the current OOGL
  5. libraries have many new features.
  6.  
  7. To clarify the difference between geomview, OOGL, and MinneView:
  8. geomview is an application written using the OOGL libraries as a
  9. foundation.  You could write an application that uses OOGL that has
  10. nothing to do with geomview, but geomview would be useless without
  11. the OOGL libraries.  The new version of OOGL retains the same name as
  12. the old.  Geomview and MinneView are both viewers: geomview is newer
  13. and is different enough from MinneView we are considering it a
  14. different program and have changed the name, instead of regarding it
  15. as just "the new version of" MinneView.
  16.  
  17. Geomview, OOGL, and MinneView run on Iris workstations using Silicon
  18. Graphics GL.  A Next version of geomview and OOGL using Quick
  19. Renderman and a Sun X-windows version of them using XGL are under
  20. development.
  21.  
  22. Geomview and OOGL are part of an ongoing effort at the Geometry Center
  23. to provide interactive 3D graphics software which is particularly
  24. appropriate for displaying the kinds of objects and doing the kinds of
  25. operations of interest in mathematics research and education.  You can
  26. compute an OOGL data file of a mathematical object that would be
  27. difficult or impossible to build a model of in the real world.  In
  28. geomview, besides examining an object in ordinary Euclidean 3-space,
  29. you can look at objects in hyperbolic 3-space and Euclidean 4-space.
  30. The hyperbolic model is the projective one, where geodesics are
  31. straight lines and isometries are represented as 4x4 projective
  32. matrices.  While geomview is tailored for mathematical visualization,
  33. it is written to be extensible and can serve as a general-purpose
  34. tool. Its functionality can be extended in an almost unlimited fashion
  35. by external modules or programs as described below.
  36.  
  37. The most basic way to use geomview is to interactively examine
  38. geometric data loaded from pre-computed files written in one of the
  39. OOGL file formats.  Geomview turns numerical data that specifies an
  40. object or a world of objects into a scene in one or more graphics
  41. windows on your workstation.  The most direct way to interact with
  42. this world is by moving the objects around and changing your point of
  43. view using the mouse.  There is a control panel that allows you to
  44. change various aspects of the world.  You interactively control the
  45. appearance and motion of the objects and the motion of the points of
  46. view. Multiple objects can be manipulated independently and there may
  47. be several windows looking at the same scene with different points of
  48. view.  OOGL data files can be generated by a C program, written by
  49. hand, or converted from Mathematica 3D graphics objects using
  50. the conversion package that is also available via anonymous ftp.
  51.  
  52. In the old version of OOGL, files could only specify geometry.  Object
  53. file formats in the new version have been extended to also include
  54. appearances, transformations, and cameras.  Any object appearance that
  55. you can establish through the geomview control panel can also be
  56. established by including an appearance specification in the same data
  57. file as that object.  A path of motion can be specified in a file by a
  58. list of 4x4 transformations, allowing you to compute a path that would
  59. be very hard to trace freehand with the mouse.  Geomview allows you to
  60. hook up the motion of an unlimited number of individual objects to
  61. separate transform files while keeping others under interactive
  62. control.
  63.  
  64. Almost everything else that can be done interactively through the
  65. graphical user interface in geomview can be specified by a lisp-like
  66. command language.  At present it has only viewer controls, no
  67. variables nor control structures.  Data in any of the file formats
  68. described above (geometry, appearances, transforms, cameras) can be
  69. embedded within the language.  Geomview can read in and act on a
  70. command language file at any time during an interactive session, and
  71. will automatically look for a file named ".geomview" in your home
  72. directory to configure itself when it starts up.
  73.  
  74. Finally and most importantly, geomview can act as a graphical front
  75. end for a separate application.  Besides interactive control or
  76. reading from a file, geomview can also be driven by external programs
  77. by reading through a Unix pipe.  Anytime that you can read data from a
  78. file in geomview you could hook up a pipe. Meanwhile, interactive
  79. controls still apply to all features not being externally controlled.
  80. For example, hooking up a pipe to a geometry allows the viewer to show
  81. a simulation's dynamically changing output, while hooking up a pipe to
  82. the motion of a geometry allows externally-driven animation. The most
  83. general route is for an external program to send commands through a
  84. pipe, since all other file formats are a subset of the command
  85. language.  Also one can externally supply geometric objects and
  86. transformations, changing all or part of a geometric hierarchy on the
  87. fly.
  88.  
  89. Another new feature of the OOGL libraries, support for four
  90. dimensional data types, was implemented by Charlie Gunn.  All
  91. geometric primitives, such as polygons, meshes, and vector lists,
  92. now can be supplied with either 3 or 4 dimensional vertices.
  93. The extensive use of projective coordinates in computer
  94. graphics allows the addition of this support with minimal programming
  95. effort.  Geomview comes with an external module which allows the user
  96. to apply four dimensional rotations to these objects. The 4-D objects
  97. are shown in 3-D by projection rather than by slicing.
  98.  
  99. We strongly encourage mathematical programmers to consider using
  100. geomview as a front end for graphics.  Just as a text editor allows
  101. you to concentrate on the content of your program instead of the
  102. mechanics of displaying letters on a computer screen or an efficient
  103. algorithm for recalling previously cut text, geomview offers a way to
  104. incorporate visualization into mathematical programs without sinking
  105. huge amounts of time and energy into graphics programming.
  106.  
  107. For users familiar with MinneView, here are the major differences
  108. between geomview and MinneView in a nutshell: Geomview has an
  109. easier-to-use user interface, multiple objects with independently
  110. controllable motion and appearances, multiple windows for different
  111. views of the same world of objects, different keyboard shortcuts,
  112. camera fly and orbit interactive motion modes, 4D support, and a
  113. lisp-like command language that allows external control of the
  114. viewer's state (actually a superset of what can be done interactively
  115. with the mouse).  External programs that that use shared memory will
  116. need updating to work.  The OOGL libraries now allow communication of
  117. geometry, appearances, transformations and cameras between programs,
  118. which is supported by extensions to the OOGL object formats.
  119. Arbitrary portions of hierarchies may be transmitted; the process
  120. involves creating references to named items, then transmitting values
  121. for those names.
  122.  
  123. Similarities between the two are: all old OOGL files that MinneView
  124. could read can be used by geomview.  The object motion modes rotate,
  125. zoom, and translate still exist.  External programs that used "stuff",
  126. a program that stuffs geometric data into a named pipe, to communicate
  127. with MinneView should work unchanged with geomview.
  128.  
  129. Geomview may be obtained via anonymous ftp from geom.umn.edu; it is in
  130. the "pub" subdirectory in the file "geomview.tar.Z".  After retrieving
  131. it (in binary ftp mode), the command "uncompress < geomview.tar.Z |
  132. tar xvopf -" will unpack it into the current directory.  This
  133. distribution includes binaries, documentation, and sample data files
  134. for geomview and a collection of auxiliary programs.
  135. See the file README for details after unpacking.
  136.  
  137. Please send all correspondence regarding this software via email
  138. to "software@geom.umn.edu".
  139.  
  140. ------------------------------------------------------------------------
  141. Stuart Levy          Tamara Munzner           Mark Phillips
  142.